package com.powergisol.gis.dao;

import com.powergisol.gis.entity.TabPile;
import com.powergisol.gis.entity.TabPileReinforcement;
import com.powergisol.gis.entity.TabPileReinforcementDetails;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.concurrent.LinkedBlockingDeque;

@Mapper
public interface TabPileMapper {
    int deleteByPrimaryKey(Integer id);

    //int insert(TabPile record);

    int insertSelective(TabPile record);
    int insertSelectiveList(@Param("list") LinkedBlockingDeque<TabPile> record);

    TabPile selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(TabPile record);

    int updateByPrimaryKey(TabPile record);

    List<Object> listPile(@Param("uuid") String uuid);

    List<Object> listBeam(@Param("uuid") String uuid);

    List<Object> listPillar(@Param("uuid") String uuid);


    TabPile getPileDetail(@Param("uuid") String uuid,@Param("hcdm01") String hcdm01);

    List<TabPileReinforcement> getReins(@Param("uuid") String uuid,@Param("hcdm01") String hcdm01);

    List<TabPileReinforcementDetails> getReinDetails(@Param("uuid") String uuid, @Param("hcdm01") String hcdm01);

    void delTabPile(@Param("uuid") String uuid);
    void delTabPileOther(@Param("uuid") String uuid);
    void delTabPileReinforcement(@Param("uuid") String uuid);
    void deldelTabPileReinforcementDetails(@Param("uuid") String uuid);

    /**
     * 删除支撑梁
     * @param uuid
     */
    void delTabBeam(@Param("uuid") String uuid);

    /**
     * 删除立柱
     * @param uuid
     */
    void delTabPillar(@Param("uuid") String uuid);
}